//
//  AppDelegate.swift
//  HMVVeibo23
//
//  Created by apple on 17/1/16.
//  Copyright © 2017年 apple. All rights reserved.
//

import UIKit

@UIApplicationMain
class AppDelegate: UIResponder, UIApplicationDelegate {

    var window: UIWindow?

//
//    @nonobjc func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {
//        // 实例化
//        self.window = UIWindow(frame: UIScreen.main.bounds)
//        // 设置背景颜色
//        self.window?.backgroundColor = UIColor.white
//        // 设置根控制器
//        self.window?.rootViewController = HMMainViewController()
//        // 成为主窗口并显示
//        self.window?.makeKeyAndVisible()
//        return true
//    }
//    
    
    func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {
//        let result = HMHomeDAL.getCache(sinceId: 0, maxId: 0)
//        print(result)
        // 实例化
        self.window = UIWindow(frame: UIScreen.main.bounds)
        // 设置背景颜色
        self.window?.backgroundColor = UIColor.white
        // 设置根控制器
        self.window?.rootViewController = setupRootViewController()
        // 成为主窗口并显示
        self.window?.makeKeyAndVisible()
        
        // 注册通知 监听切换根控制器
        NotificationCenter.default.addObserver(self, selector: #selector(switchRootViewContoller), name: NSNotification.Name(rawValue: SWITCHROOTVIEWCONTROLLERNOTI), object: nil)
        
        return true
    }
    // 监听切换跟控制的方法
    /*
        - 访客视图->登录界面->欢迎界面 object = nil
        - 欢迎界面->首页 object = "welcomeVc"
     */
    @objc private func switchRootViewContoller(noti: Notification){
//        if noti.object == nil {
//            window?.rootViewController = HMWelcomeViewController()
//        }else {
//             window?.rootViewController = HMMainViewController()
//        }
        window?.rootViewController = noti.object == nil ? HMWelcomeViewController():HMMainViewController()
    }
    
    /*
        - 程序启动的时候 选择根视图
            - 如果没有登录  rootVc = HMMainVc
            - 如果登录了    rootVc = HMWelcomeVc
     */
    // 设置根控制器
    private func setupRootViewController() -> UIViewController{
//        // 如果没有登录
//        if !HMOAuthViewModel.shared.isLogin {
//            return HMMainViewController()
//        }else {
//            // 已经登录了
//            return HMWelcomeViewController()
//        }
        return !HMOAuthViewModel.shared.isLogin == true ? HMMainViewController():HMWelcomeViewController()
    }
    
    func applicationDidEnterBackground(_ application: UIApplication) {
        // 删除本地数据
        HMHomeDAL.deleteCache()
    }
    
    // 析构函数
    deinit {
        NotificationCenter.default.removeObserver(self)
    }


}

